"""
项目简介
水仙花数

知识模块
Python 编程语言
知识点
运算符
循环语句-for-in
分支语句-if
函数返回值与参数处理
受众
初级测试开发工程师
初级Python开发工程师
作业要求
编写一个 Python 程序，找出100-999范围内的水仙花数。所谓"水仙花数"是指一个三位数，其各位数字立方和等于该数本身。例如：153是一个"水仙花数"，因为153=1的三次方＋5的三次方＋3的三次方。

解题思路
循环遍历100-999之间的所有三位数

分别获取百位数，十位数，个位数

判断是否为水仙花数

打印符合条件的数字


"""

water_flower = []

for i in range (100,1000):
    b = i // 100
    s = i // 10 % 10
    g = i % 10

    if i == b*b*b + s*s*s + g*g*g:
        water_flower.append(i)

print(water_flower)

"""
代码讲解
for n in range(100, 1000)：使用 for 循环遍历从 100 到 999 的所有三位数。

i = n // 100：获取数字 n 的百位数。

j = n // 10 % 10：获取数字 n 的十位数。

k = n % 10：获取数字 n 的个位数。

if n == i**3 + j**3 + k**3：判断是否为水仙花数，即判断条件为原数字等于各位数字的立方和。

print(n) ：如果是水仙花数，将其输出。

"""